The present invention relates to establishing a link between nodes in a network, and in particular to an auto-negotiation process in an Ethernet network.
Ethernet is a commonly used local area network scheme in which multiple stations are connected together. Typically, only one station can transmit data at a time. A station transmits data in the form of a packet that includes a destination address. The packet propagates throughout the network and is received by all other stations. The addressed station copies the entire packet as it goes by; the others reject the packet after determining that it is addressed to another station.
A media access controller (MAC) serves as an interface between a physical layer device and a system. Most nodes connected to the network includes a MAC which performs a number of functions involved in the transmission and reception of data packets. For example, during the transmission of data, the MAC assembles the data to be transmitted into a packet with address and error detection fields. Conversely, during the reception of a packet, the MAC disassembles the packet and performs address checking and error detection. In addition, the MAC performs preamble generation/removal. The physical layer takes data from the MAC layer, encodes it, and serializes if for transmission on the medium (and the inverse for received transmissions).
Twisted pair Ethernet in accordance with IEEE Standard 802.3 10Base-T is able to use standard voice grade telephone cable employing separate transmit and receive pairs (4 wires). The system uses a star topology. At the center of the star is a "repeater". The repeater (or hub) performs signal amplitude and timing restoration. It takes an incoming bit stream and repeats it to all other ports connected to it (but not back to the originating port). In this sense, the repeater acts as "logical coax", so that any node connected to the network will see another's transmission. Differential signalling is employed with one pair acting as the transmit path, and the other as receive.
The current Ethernet standards are set forth in IEEE Standard 802.3 10Base-T and 100Base-T. An auto-negotiation process is set forth in the Standard. The auto-negotiation process (1) exchanges information about each station, (2) determines the common capabilities of the stations, and (3) selects the highest performance common capabilities to attempt to establish a link, which if successfully established will cause the setting of an auto-negotiation completion bit in a link code word. The link code word also contains other configuration information, such as whether the station supports full or half duplex, TX or FX, etc. Separate bits are also set if the link partner is not auto-negotiation able, by setting the LB.sub.-- AutoNeg.sub.-- Able bit (6:XX).